/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controladores;

import Conceptos.Categoria;
import Conceptos.PuntoMuestreo;
import MPersistencia.MPCategoria;
import java.io.Serializable;
import java.sql.SQLException;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.event.ActionEvent;

/**
 *
 * @author USUARIO
 */
@ManagedBean(name = "controlCategoria")
@RequestScoped
public class controlCategoria implements Serializable {

    private static boolean mostPanel = false;
    private static int codigo;
    private static String nombre;
    private static String descripcion;
    private static List<Categoria> listacategoria;

    public void limpiar() {
        nombre = "";
        descripcion = "";
    }

    public void REgistrar() throws SQLException, Exception {
        Categoria cat = new Categoria();
        System.out.println(nombre);
        System.out.println(descripcion);
        cat.setNombre(nombre);
        cat.setDescripcion(nombre);
        MPCategoria.crearCategoria(cat);
        ListarCategoria();
        limpiar();


    }

    /** Creates a new instance of controlCategoria */
    public controlCategoria() {

        ListarCategoria();


    }

    public static void cerrarSession() {
        mostPanel = false;
        codigo = 0;
        nombre = null;
        descripcion = null;
        listacategoria = null;
    }

    /**
     * @return the mostPanel
     */
    public void ListarCategoria() {
        try {
            setListacategoria(MPCategoria.listarCategoria());
        } catch (SQLException ex) {
            Logger.getLogger(controlCategoria.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(controlCategoria.class.getName()).log(Level.SEVERE, null, ex);
        }

    }

    public void registrarCategoria() throws SQLException, Exception {

        System.out.println("Registra yaaaaaaa");

    }

    public int ultimaCategoria() {
        int codPla = 0;
        try {
            codPla = MPCategoria.ultimaCategoria();
        } catch (SQLException ex) {
            Logger.getLogger(controlPlayas.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(controlPlayas.class.getName()).log(Level.SEVERE, null, ex);
        }
        return codPla;
    }

    public void ocultarPanel() {
        try {
            Categoria cat = new Categoria();
            cat.setNombre(nombre);
            cat.setDescripcion(descripcion);
            MPCategoria.crearCategoria(cat);
            ListarCategoria();
        } catch (SQLException ex) {
            Logger.getLogger(controlCategoria.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(controlCategoria.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    /**
     * @return the codigo
     */
    public int getCodigo() {
        codigo = ultimaCategoria();
        return codigo;
    }

    /**
     * @param codigo the codigo to set
     */
    public void setCodigo(int codigo) {
        this.codigo = codigo;
    }

    /**
     * @return the nombre
     */
    public String getNombre() {
        return nombre;
    }

    /**
     * @param nombre the nombre to set
     */
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    /**
     * @return the descripcion
     */
    public String getDescripcion() {
        return descripcion;
    }

    /**
     * @param descripcion the descripcion to set
     */
    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    /**
     * @return the listacategoria
     */
    public List<Categoria> getListacategoria() {
        return listacategoria;
    }

    /**
     * @param listacategoria the listacategoria to set
     */
    public void setListacategoria(List<Categoria> listacategoria) {
        this.listacategoria = listacategoria;
    }

    public boolean getMostPanel() {
        return mostPanel;
    }

    /**
     * @param mostPanel the mostPanel to set
     */
    public void setMostPanel(boolean mostPanel) {
        this.mostPanel = mostPanel;
    }
}
